import {bgLogin} from '../../api/api.js'
import {bgLoginSon} from '../../api/api.js'
import {getMerchantMsg} from '../../api/api.js'
import {mOpenSocket} from '../utils/mWebsocket.js';
Page({
  /**
   * 页面的初始数据
   */
  data: {
     login:false,
     username:"",
     password:"",
     //是否使用子账号
     radio:"false", 
     loginMsg:{},
     show:false,//退出弹出框
  },


  signOut(){
     this.setData({
       show:true
     })
  },


  // quit(){
  //    console.log("点击退出方法");
  //    this.setData({
  //      show:false
  //    })
  //    wx.removeStorageSync('bgPwd');
  //    this.onShow();
  // },

// -------------------------登录----
  // redio 改变事件
  onChange(e) {
    if(this.data.radio == "true"){
      this.setData({
        radio:"false"
      });
    }else{
      this.setData({
        radio:"true"
      });
    }

    console.log(this.data.radio)
  }, 


  //关闭弹出框
  onClose(){
      this.setData({
        show:false
      })
  },


  
  setLoginInfo(info){
     wx.setStorageSync('merchantLoginInfo',info)
  },

  getLoginInfo(){
     return wx.getStorageSync('merchantLoginInfo');
  },

  setPwd(pwd){
      wx.setStorageSync('bgPwd',pwd)
  },

  getPwd(){
      return  wx.getStorageSync('bgPwd');
  },





  login(){
      // 验证账号密码
      if(this.data.username==""){
         wx.showToast({
           title: '账号不能为空',
           icon:"none"
         })
         return;
      }
      
      if(this.data.password == ""){
        wx.showToast({
          title:'密码不能为空',
          icon:"none"
        })
        return;
      }
     
      let param = {
          username:this.data.username,
          password:this.data.password
      }

      console.log(param)
      if(this.data.radio == "true"){
          //子账号登录 
          bgLoginSon(param).then(res=>{
              console.log(res);
              if(res.data.code == 200){
                let session = res.cookies[0];
                session = session.split(";")[0];
                // console.log(session,"获取到session")
                // res.data.data.session = session;
                getMerchantMsg(res.data.data.merchantId).then(res1=>{
                    //获取商家的信息拼接到原来的中
                    //添加一个session
                    console.log(res1,"子账号获取商家信息");
                    let sonData = res1.data.data;
                    //数组的拼接·
                    let object = Object.assign(sonData,res.data.data);
                    object.session = session;
                    console.log(object,"拼接后的对象")
                    this.setLoginInfo(object);
                    param.radio=this.data.radio;
                    this.setPwd(param);
                    this.setData({
                       login:true,
                       loginMsg:object
                    })
                    //链接websocket
                    if(getApp().globalData.mSocketFlag == false){
                      console.log("%c socket链接失败，因为已经链接过一次了","color:green;font-size:20px;");
                    }else{
                       mOpenSocket(getApp().globalData,res.data.data.id);
                    }
                })
              }else{
                  wx.showToast({
                    title:res.data.msg,
                    icon:"none"
                  })
              }
          })
      }else{
          bgLogin(param).then(res=>{
              console.log(res);
              if(res.data.code == 200){
                this.setData({
                    login:true,
                    loginMsg:res.data.data
                })

                let session = res.cookies[0];
                session = session.split(";")[0];
                console.log(session,"获取到session")
                res.data.data.session = session;
                this.setLoginInfo(res.data.data);
                param.radio=this.data.radio;
                this.setPwd(param);
                console.log(res,"获取商家登录信息")

                //链接websocket
                if(getApp().globalData.mSocketFlag == false){
                  console.log("%c socket链接失败，因为已经链接过一次了","color:green;font-size:20px;");
                }else{
                   mOpenSocket(getApp().globalData,res.data.data.id);
                }
              }else{
                  wx.showToast({
                    title:res.data.msg,
                    icon:"none"
                  })
              }
          })
      }

      console.log("登录");
},


// --------------------------------------------------


  inputUsername(e){
      console.log(e.detail.value);
      this.setData({
          username:e.detail.value
      })
  },

  inputPwd(e){
      console.log(e.detail.value);
      this.setData({
          password:e.detail.value
      })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady:function(){

  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow:function(){
      // let loginInfo = this.getLoginInfo();
      let  pwd = this.getPwd();
      // console.log(loginInfo,"-------")
      // 如果本地存储了账号秘密，那么自动登录，如果没有那么手动登录
      if(pwd){
          this.setData({
             //loginMsg:loginInfo,
             //login:true
             username:pwd.username,
             password:pwd.password,
             radio:pwd.radio
          })
          //以前的逻辑是如果有登录信息就直接使用就好了
          // 现在后端设置了session 所以发请求必须携带session，所以每次进入
          // 主页都要去用账号密码获取最新的session
          this.login();
      }else{
          this.setData({
             login:false
          })
      }
  },

 
 

  //去聊天页面
  toChat(){
      console.log("chat");
      wx.navigateTo({
        url:'/pages/bgChatList/chatList',
      })
  },
 


  //去今日订单数页面
  todayOrderNum(){
       console.log("num");
       wx.navigateTo({
         url:'/pages/nowOrders/nowOrders?id='+this.data.loginMsg.id,
       })
  },


   
  //去售后页面
  toBackstage(){
      console.log("backstage")
      wx.navigateTo({
        url:'/pages/customerService/customerService?id='+this.data.loginMsg.id,
      })
  },


  //去店铺页面
  toStore(){
     console.log("tostore")
     wx.navigateTo({
       url:'/pages/shop/shop?id='+this.data.loginMsg.id,
     })
  },


  toSendGoods(){
       console.log("去发货");
       wx.navigateTo({
         url:'/pages/sendGoods/sendGoods?id='+this.data.loginMsg.id,
       })
  },
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide:function(){

  },
  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },
  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh:function(){

  },
  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom:function(){

  },
  /**
   * 用户点击右上角分享
   */
  onShareAppMessage:function(){

  }
})

